/*
 * brain.h
 *
 *  Created on: 27/mag/2014
 *      Author: PegorarS
 */

#ifndef BRAIN_H_
#define BRAIN_H_

#include "patterns.h"
#include "tradertype.h"

namespace NS_NN{
	class Brain : public Publisher<Strategy>{
	public:
		Brain(NeuralNetworkMap *_nnMap);
		virtual ~Brain();

		virtual void Publish(Strategy &forecast){}

		void ClearMind();
		void FeedData(Date date, PRICE open, PRICE close, PRICE min, PRICE max, VOLUME vol);
		void Learn(Strategy &correctedStrategy);
		NeuralNetworkMap *GetMap() const;

	private:
		NeuralNetworkMap *m_nnMap;
	};
}



#endif /* BRAIN_H_ */
